package com.zw.mes.module.prodtaskmanager.entity;

import java.io.Serializable;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

/**
 * 一级排产计划表
 *
 * @author 徐一贺
 * @TableName prod_plan_detail
 */
@Data
public class ProdPlaDet implements Comparable<ProdPlaDet> {
    /**
     * 主键
     *
     * @mbg.generated Wed Jan 13 15:54:08 CST 2021
     */
    private Integer prpdId;

    /**
     * 外键：总调计划主键
     *
     * @mbg.generated Wed Jan 13 15:54:08 CST 2021
     */
    private Integer prpdPropId;

    /**
     * 计划名称
     *
     * @mbg.generated Wed Jan 13 15:54:08 CST 2021
     */
    private String prpdNam;

    /**
     * 计划码
     *
     * @mbg.generated Wed Jan 13 15:54:08 CST 2021
     */
    private String prpdCod;

    /**
     * 序号
     *
     * @mbg.generated Wed Jan 13 15:54:08 CST 2021
     */
    private Integer prpdOrdNo;

    /**
     * 外键：依赖部门表ID
     */
    private Integer prpdDepId;

    /**
     * 计划开始时间
     *
     * @mbg.generated Wed Jan 13 15:54:08 CST 2021
     */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date prpdPlaStaDat;

    /**
     * 计划结束时间
     *
     * @mbg.generated Wed Jan 13 15:54:08 CST 2021
     */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date prpdPlaEndDat;


    /**
     * 状态：0是未开始，1是执行中，2是已完成
     *
     * @mbg.generated Wed Jan 13 15:54:08 CST 2021
     */
    private Integer prpdSta;

    /**
     * 1是需要，0是不需要
     *
     * @mbg.generated Wed Jan 13 15:54:08 CST 2021
     */
    private Byte prpdIsNee;

    /**
     * 是否必填：1是必填，0是不必填
     *
     * @mbg.generated Wed Jan 13 15:54:08 CST 2021
     */
    private Byte prpdIsReq;

    /**
     * 是否删除：1是删除，0是不删除
     */
    private Byte prpdIsDel;

    /**
     * "计划等级:1是一级计划，2是二级计划，以
     * 此类推"
     *
     * @mbg.generated Wed Jan 13 15:54:08 CST 2021
     */
    private String prpdRem;

    /**
     * 变更原因
     */
    private String prpdChaRea;
    /**
     * 变更人
     */
    private String prpcChaUse;
    /**
     * 操作系统
     */
    private String prpcOs;
    /**
     * 浏览器
     */
    private String prpcBrowser;
    /**
     * 普通计划反馈编辑状态:1是未执行，2是执行中，3是已完成
     */
    private Integer prpdRetSta;
    /**
     * 普通计划反馈编辑状态为完成的时间
     */
    private Date prpdRetDate;
    /**
     * 变更用户IP地址
     */
    private String prpcIp;

    @Override
    public int compareTo(ProdPlaDet prodPlaDet) {           //重写Comparable接口的compareTo方法，
        return this.prpdOrdNo - prodPlaDet.getPrpdOrdNo();// 根据年龄升序排列，降序修改相减顺序即可
    }

    /**
     * 派工工时
     */
    private String prpdAssWorHours;

}